﻿Public Interface IScannerStateManager
    Function DefineState(ByVal segment As LexiconSegment) As Integer
End Interface

Public Class ScannerStateManager
    Implements IScannerStateManager

    Private m_stateList As List(Of LexiconSegment)

    Friend Sub New()
        m_stateList = New List(Of LexiconSegment)
    End Sub

    Public Function DefineState(ByVal segment As LexiconSegment) As Integer Implements IScannerStateManager.DefineState
        m_stateList.Add(segment)
        Return m_stateList.Count - 1
    End Function
End Class
